package com.vizhuo.client.business.meb.mebacc.vo;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

import com.vizhuo.client.base.AbstractVo;
import com.vizhuo.client.util.ClientUtil;

/**
 * 司机实体类
 * 
 * @author luzh
 * @date 创建时间：2015年6月29日 下午4:10:58
 * @version 1.0
 * @parameter
 * @since
 * @return
 */
public class MebDriverVo extends AbstractVo implements Serializable {

    /**
     * 
     */
    private static final long serialVersionUID = -8575037961011101227L;

    /**
     * id liujq
     */
    private Integer id;

    /**
     * 车主姓名
     */
    private String name;

    /**
     * 联系方式
     */
    private String phone;

    /**
     * 认证状态
     */
    private String checkFlag;

    /**
     * 认证失败项目集合(字符串)
     */
    private String checkFlagItemsStr;

    /**
     * 认证状态(说明）
     */
    private String checkFlagRemark;

    /**
     * 来源
     */
    private String sourceCode;

    /**
     * 推荐人
     */
    private String referrer;

    /**
     * 头像图片路径
     */
    private String headPicPath;

    /**
     * 头像图片名称
     */
    private String headPicName;

    /**
     * 身份证号
     */
    private String idCard;

    /**
     * 驾驶证图片路径
     */
    private String driverPicPath;

    /**
     * 驾驶证图片名称
     */
    private String driverPicName;

    /**
     * 行驶证图片路径
     */
    private String runPicPath;

    /**
     * 行驶证图片名称
     */
    private String runPicName;

    /**
     * 车辆照片路径
     */
    private String carPicPath;

    /**
     * 车辆照片名称
     */
    private String carPicName;

    /**
     * 运输资格证路径
     */
    private String transportPicPath;

    /**
     * 运输资格证名称
     */
    private String transportPicName;

    /**
     * 车牌号
     */
    private String carNumber;

    /**
     * 车辆类型(code)
     */
    private String carType;

    /**
     * 车辆类型(名称)
     */
    private String carTypeName;

    /**
     * 车辆长度
     */
    private String carLength;

    /**
     * 车辆长度(名称)
     */
    private String carLengthName;

    /**
     * 车辆载重
     */
    private String carLoad;

    /**
     * 百度经度
     */
    private String bdLng;

    /**
     * 百度维度
     */
    private String bdLat;

    /**
     * 经纬度对应的地址
     */
    private String addrLngLat;

    /**
     * 空车状态
     */
    private String carState;

    /**
     * 登录账号实体类信息，只是为了方便用于客户端展示信息使用
     */
    private MebAccVo mebAcc;

    /**
     * 等级 liujq
     */
    private String driverLevel;

    /**
     * 成交笔数 liujq
     */
    private Integer turnoverNum;

    /**
     * 距离 liujq
     * 
     * @return
     */
    private Integer distance;

    /**
     * 好评率 liujq
     */
    private java.math.BigDecimal highPraiseRate;

    /**
     * 成单数量
     */
    private Integer orderEndCount;

    /**
     * 投诉量
     */
    private Integer complaintNums;

    /**
     * 运输线路
     */
    private List<MebRunLineVo> mebRunLineList;

    /**
     * 是否接受同城运输（1：是，0：否）
     */
    private String isAcceptCity;

    /**
     * 是否接受干线运输（1：是，0：否）
     */
    private String isAcceptLine;

    /**
     * 开通定位服务状态
     */
    private String stateLocationOpen;

    public java.math.BigDecimal getHighPraiseRate() {
        return highPraiseRate;
    }

    public String findHighPraiseRateStr() {
        if (highPraiseRate != null) {
            return highPraiseRate.multiply(new BigDecimal(100)).intValue() + "%";
        } else {
            return "0%";
        }
    }

    public void setHighPraiseRate(java.math.BigDecimal highPraiseRate) {
        this.highPraiseRate = highPraiseRate;
    }

    public String getCarTypeName() {
        return ClientUtil.str(carTypeName);
    }

    public void setCarTypeName(String carTypeName) {
        this.carTypeName = carTypeName;
    }

    public Integer getDistance() {
        return distance;
    }

    public void setDistance(Integer distance) {
        this.distance = distance;
    }

    public String getDriverLevel() {
        return driverLevel;
    }

    public void setDriverLevel(String driverLevel) {
        this.driverLevel = driverLevel;
    }

    public Integer getTurnoverNum() {
        return turnoverNum;
    }

    public void setTurnoverNum(Integer turnoverNum) {
        this.turnoverNum = turnoverNum;
    }

    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return ClientUtil.str(name);
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public String getCheckFlag() {
        return checkFlag;
    }

    public void setCheckFlag(String checkFlag) {
        this.checkFlag = checkFlag;
    }

    public String getSourceCode() {
        return sourceCode;
    }

    public void setSourceCode(String sourceCode) {
        this.sourceCode = sourceCode;
    }

    public String getReferrer() {
        return referrer;
    }

    public void setReferrer(String referrer) {
        this.referrer = referrer;
    }

    public String getHeadPicPath() {
        return headPicPath;
    }

    public void setHeadPicPath(String headPicPath) {
        this.headPicPath = headPicPath;
    }

    public String getHeadPicName() {
        return headPicName;
    }

    public void setHeadPicName(String headPicName) {
        this.headPicName = headPicName;
    }

    public String getIdCard() {
        return idCard;
    }

    public void setIdCard(String idCard) {
        this.idCard = idCard;
    }

    public String getDriverPicPath() {
        return driverPicPath;
    }

    public void setDriverPicPath(String driverPicPath) {
        this.driverPicPath = driverPicPath;
    }

    public String getDriverPicName() {
        return driverPicName;
    }

    public void setDriverPicName(String driverPicName) {
        this.driverPicName = driverPicName;
    }

    public String getRunPicPath() {
        return runPicPath;
    }

    public void setRunPicPath(String runPicPath) {
        this.runPicPath = runPicPath;
    }

    public String getRunPicName() {
        return runPicName;
    }

    public void setRunPicName(String runPicName) {
        this.runPicName = runPicName;
    }

    public String getCarPicPath() {
        return carPicPath;
    }

    public void setCarPicPath(String carPicPath) {
        this.carPicPath = carPicPath;
    }

    public String getCarPicName() {
        return carPicName;
    }

    public void setCarPicName(String carPicName) {
        this.carPicName = carPicName;
    }

    public String getCarNumber() {
        return carNumber;
    }

    public void setCarNumber(String carNumber) {
        this.carNumber = carNumber;
    }

    public String getCarType() {
        return carType;
    }

    public void setCarType(String carType) {
        this.carType = carType;
    }

    public String getCarLength() {
        return carLength;
    }

    public void setCarLength(String carLength) {
        this.carLength = carLength;
    }

    public String getCarLoad() {
        return carLoad;
    }

    public void setCarLoad(String carLoad) {
        this.carLoad = carLoad;
    }

    public String getBdLng() {
        return bdLng;
    }

    public void setBdLng(String bdLng) {
        this.bdLng = bdLng;
    }

    public String getBdLat() {
        return bdLat;
    }

    public void setBdLat(String bdLat) {
        this.bdLat = bdLat;
    }

    public String getAddrLngLat() {
        return addrLngLat;
    }

    public void setAddrLngLat(String addrLngLat) {
        this.addrLngLat = addrLngLat;
    }

    public MebAccVo getMebAcc() {
        return mebAcc;
    }

    public void setMebAcc(MebAccVo mebAcc) {
        this.mebAcc = mebAcc;
    }

    public String getCarState() {
        return carState;
    }

    public void setCarState(String carState) {
        this.carState = carState;
    }

    public Integer getOrderEndCount() {
        return orderEndCount == null ? 0 : orderEndCount;
    }

    public void setOrderEndCount(Integer orderEndCount) {
        this.orderEndCount = orderEndCount;
    }

    public String getCheckFlagRemark() {
        return checkFlagRemark;
    }

    public void setCheckFlagRemark(String checkFlagRemark) {
        this.checkFlagRemark = checkFlagRemark;
    }

    public List<MebRunLineVo> getMebRunLineList() {
        return mebRunLineList;
    }

    public void setMebRunLineList(List<MebRunLineVo> mebRunLineList) {
        this.mebRunLineList = mebRunLineList;
    }

    public String getIsAcceptCity() {
        return isAcceptCity;
    }

    public void setIsAcceptCity(String isAcceptCity) {
        this.isAcceptCity = isAcceptCity;
    }

    public String getIsAcceptLine() {
        return isAcceptLine;
    }

    public void setIsAcceptLine(String isAcceptLine) {
        this.isAcceptLine = isAcceptLine;
    }

    public String getTransportPicPath() {
        return transportPicPath;
    }

    public void setTransportPicPath(String transportPicPath) {
        this.transportPicPath = transportPicPath;
    }

    public String getTransportPicName() {
        return transportPicName;
    }

    public void setTransportPicName(String transportPicName) {
        this.transportPicName = transportPicName;
    }

    @Override
    public String toString() {
        return "MebDriverVo [id=" + id + ", name=" + name + ", phone=" + phone + ", checkFlag=" + checkFlag
                + ", checkFlagRemark=" + checkFlagRemark + ", sourceCode=" + sourceCode + ", referrer=" + referrer
                + ", headPicPath=" + headPicPath + ", headPicName=" + headPicName + ", idCard=" + idCard
                + ", driverPicPath=" + driverPicPath + ", driverPicName=" + driverPicName + ", runPicPath="
                + runPicPath + ", runPicName=" + runPicName + ", carPicPath=" + carPicPath + ", carPicName="
                + carPicName + ", transportPicPath=" + transportPicPath + ", transportPicName=" + transportPicName
                + ", carNumber=" + carNumber + ", carType=" + carType + ", carLength=" + carLength + ", carLoad="
                + carLoad + ", bdLng=" + bdLng + ", bdLat=" + bdLat + ", addrLngLat=" + addrLngLat + ", carState="
                + carState + ", mebAcc=" + mebAcc + ", driverLevel=" + driverLevel + ", turnoverNum=" + turnoverNum
                + ", distance=" + distance + ", carTypeName=" + carTypeName + ", highPraiseRate=" + highPraiseRate
                + ", orderEndCount=" + orderEndCount + ", mebRunLineList=" + mebRunLineList + ", isAcceptCity="
                + isAcceptCity + ", isAcceptLine=" + isAcceptLine + "]";
    }

    public String getCarLengthName() {
        return ClientUtil.str(carLengthName);
    }

    public void setCarLengthName(String carLengthName) {
        this.carLengthName = carLengthName;
    }

    public String getStateLocationOpen() {
        return ClientUtil.str(stateLocationOpen);
    }

    public void setStateLocationOpen(String stateLocationOpen) {
        this.stateLocationOpen = stateLocationOpen;
    }

    public String getCheckFlagItemsStr() {
        // if (checkFlagItemsStr != null) {
        // checkFlagItemsStr = checkFlagItemsStr.replaceAll("\n", "");
        // checkFlagItemsStr = checkFlagItemsStr.replaceAll(" ", "");
        // }
        return checkFlagItemsStr;
    }

    public void setCheckFlagItemsStr(String checkFlagItemsStr) {
        this.checkFlagItemsStr = checkFlagItemsStr;
    }

    public Integer getComplaintNums() {
        return complaintNums == null ? 0 : complaintNums;
    }

    public void setComplaintNums(Integer complaintNums) {
        this.complaintNums = complaintNums;
    }

}
